// pages/workers/workers.js
const db = wx.cloud.database();
const command = db.command;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    username: '',
    wokers: [{
      name: "",
      sex: "",
      pic: "",
      desc: ""
    }],
  },

  // 从缓存读取当前登录的用户名
  getuserinfo: function () {
    wx.getStorage({
      key: 'username',
    }).then(res => {
      this.setData({
        username: res.data
      })
    })
  },

  // 弹出工人电话窗口来拨打电话
  make_phonecall: function (e) {
    console.log("打电话");
    // console.log(e.currentTarget.dataset);
    var id = e.currentTarget.dataset.id;
    // console.log(this.data.wokers[id].tel);
    var telphone = this.data.wokers[id].tel;
    wx.makePhoneCall({
      phoneNumber: telphone,
    })
  },

  // 跳转到工人详情
  worker_desc: function (e) {
    // console.log(e);
    // console.log(e.currentTarget);
    // console.log(e.currentTarget.dataset.id);
    // 当前点击的人的下标
    var id = e.currentTarget.dataset.id;
    // 下面就是点击的这个人的具体数据
    // console.log(this.data.wokers[id]);
    // 然后将这些数据写入缓存，在下个页面显示
    wx.setStorage({
      data: this.data.wokers[id],
      key: 'tap_worker',
    });
    // 然后跳转页面
    wx.navigateTo({
      url: '../../pages/worker_desc/worker_desc',
    })

  },

  // 打开聊天窗口进行聊天
  chat_online: function (e) {
    // console.log(this.data.username);
    // console.log(this.data.wokers[e.currentTarget.dataset.id].username);
    // 当前的登录的人的用户名
    var userA = this.data.username;
    // 想要聊天的对象的用户名
    var userB  = this.data.wokers[e.currentTarget.dataset.id].name;
    wx.setStorage({
      data: [userA, userB],
      key: 'chat_users',
    })
    db.collection('chatroom').where(command.and([{
        userA: userA,
      },
      {
        userB: userB,
      }
    ])).get().then(res => {
      // console.log(res.data);
      if (res.data.length == 0) {
        db.collection('chatroom').add({
          data:{
            userA:userA,
            userB:userB,
            detail:[],
          }
        }).then(res=>{
          console.log("没有这个聊天记录，在数据库中添加一条");
          wx.navigateTo({
            url: '../../pages/chat_page/chat_page?userA=' + userA + '&userB=' + userB,
          })
        })
      } else {
        wx.navigateTo({
          url: '../../pages/chat_page/chat_page?userA=' + userA + '&userB=' + userB,
        })
      }
    })





  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getuserinfo();
    db.collection('users')
      .where({
        role: 'worker',
      })
      .get()
      .then(res => {
        // console.log(res);
        var that = this;
        that.setData({
          wokers: res.data
        });
        // console.log(res.data);
      }).catch(err => {
        // 如果更新数据失败则输出失败信息
        console.log(err);
      })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})